Internet Protocol (“IP”) telephony or voice over IP (“VoIP”) refers to the transmission of voice calls or voice traffic in packets over one or more networks or internets that are based on IP. VoIP allows organizations to apply an existing IP network to new uses by carrying both voice and data traffic in the IP network. With VoIP, organizations that have extensive IP networks that span multiple cities or states by using Wide area Network (“WAN”) links may avoid using public switched telephone networks (“PSTN”) to carry telephone calls, thereby achieving significant cost savings. In addition, the organization gains increased control over the network that is carrying the calls. Further information about VoIP is available in numerous references, e.g., U. Black, “Voice Over IP” (Upper Saddle River, N.J.: Prentice-Hall, 2000).
However, the hardware and software that forms an IP network may fail, introduce errors, or cause other problems when data traffic or voice traffic is sent over the IP network. For example, a phone at the originating end of a call may fail to make a connection with the destination phone for sending a VoIP flow due to a signaling phase problem. Other problems may include disruptions of a voice transmission or poor sound quality resulting from excessive packet latency or jitter. Latency is end-to-end delay in a transmission, and jitter is variation in the latency. Such problems may be caused by improper configuration of routers, switches, or other devices in the network. Thus, mechanisms are needed to isolate the source of a problem in the network in order to correct the problem.
One method of isolating the source of such problems (“troubleshooting”) is to trace a path traversed by packets between two or more media end-points in an IP network that carries different media traffic such as voice, data and or video. Tracing a path traversed by packets between two or more media end-points in an IP network may be performed at different logical levels depending on the type of network communications that is of interest during the troubleshooting process.
In specifying a logical level for path tracing, the Open Systems Interconnection (“OSI”) network reference model is useful. The OSI reference model divides the tasks of moving information between the network devices into groups of manageable tasks. Each group of tasks is assigned to one of seven named and numbered logical layers of the OSI reference model.
Tracing a path at Layer 3 (the Network layer) or at Layer 2 (the Data Link layer) is desirable to facilitate the troubleshooting process, however, there is no known way to carry out such path tracing in a way that addresses problems unique to voice call transmission in an EP network.
Layer 3 encompasses routing and related functions that enable media to move across an internetwork from a source device to a destination device. For example, Layer 3 may manage the routing of an IP packet from one Local Area Network (“LAN”) to another. The path traversed by an IP packet at the Layer 3 level is referred to herein as a “Layer 3 path.” A process of determining a path at Layer 3 is referred to herein as “Layer 3 path tracing.” Layer 2 defines network and protocol characteristics, including physical addressing, network topology, sequencing of frames, and flow control. Determining a path at Layer 2 is herein referred to as “Layer 2 path tracing.”
Based on the foregoing, there is a clear need for a mechanism that can trace a Layer 3 and Layer 2 path associated with a voice over IP flow in an IP network.